/**
 * MenuActions.java
 * 18/05/2011 12:47:44
 */
package gui.menus;

import java.beans.PropertyChangeListener;

/**
 * @author walber
 * 
 */
public interface MenuLevelActions {

	/**
	 * Accion que carga el siguiente nivel del juego.
	 */
	public void actionNextLevel();

	/**
	 * Accion que carga el nivel anterior del juego.
	 */
	public void actionBackLevel();

	/**
	 * Accion que reinicia el nivel actual.
	 */
	public void actionRestartLevel();

	/**
	 * Puedo activar accion de siguiente nivel.
	 * 
	 * @return boolean
	 */
	public boolean canNextLevel();

	/**
	 * Puedo activar accion de anterior nivel.
	 * 
	 * @return boolean
	 */
	public boolean canBackLevel();

	/**
	 * Agregar un listener a la lista de current level.
	 * 
	 * @param listener
	 */
	public void addCurrentLevelPropertyChangeListener(
			PropertyChangeListener listener);

	/**
	 * Borrar un listener de la lista de current level.
	 * 
	 * @param listener
	 */
	public void removeCurrentLevelPropertyChangeListener(
			PropertyChangeListener listener);
}
